Data processing systems are often used to generate, manipulate or store large amounts of information. The information can frequently be grouped into different classes based on criteria such as its size, importance, frequency of access, and expected useful lifetime. For example, data to describe a frame of video may be fairly large, but may only be accessed once during the playing of a much longer media segment, and may only be valid for a fraction of a second, until the next frame is to be displayed. In contrast, data to describe the layout of partitions on a hard disk may be quite small, and only accessed once when a system is initialized, but may be exceedingly important: the system may be unable to start or function properly without correct information about the hard disk layout.
Deterministic behavior is often an important or essential characteristic of a data processing system, but even within a system that is designed to process data in a reproducible fashion, different classes of data can be earmarked for different treatment to improve the overall performance of the system. Frequently, a “normal” processing pattern can be identified and procedures designed to expedite the normal flow, while alternate procedures can be provided to maintain data integrity if abnormal or error conditions arise. Identification of opportunities to improve typical system operations without impacting overall data correctness is a continuing task.